#ifndef ParserOptions_H
#define ParserOptions_H
#include<string>
#include<vector>
using namespace std;

class ParserOptions{
private:
	void init();
public:
	string* trainfile;
	string* testfile;
	string* trainforest;
	string* logfile;
	//string* testforest;
	bool train;
	bool eval;
	bool test;
	bool dev;
	bool labeled;
	bool hasEnd;
	string* modelName;
	string* lossType;
	bool createForest;
	string* decodeType;
	string* format;
	int numIters;
	string* outfile;
	string* goldfile;
	string* devfile;
	int trainK;
	int testK;
	int order;
	string* modelType;
	string* learnModel;
	int lm;
	int model;
	bool useRelationalFeatures;
	bool discourseMode;
	int pool_size;
	int map_size;
	int root_type;
	string* rootType;
	double C;
	int maxiter;
	double eta;
	int thread_num;
	
	ParserOptions(vector<string*> &args);
	~ParserOptions();
	string* toString();
};
#endif
